<?php

App::uses('AppController', 'Controller');

/**
 * SisdecTipologies Controller
 *
 * @property SisdecTipology $SisdecTipology
 * @property PaginatorComponent $Paginator
 */
class SisdecTipologiesController extends AppController {

    /**
     * Components
     *
     * @var array
     */
    public $components = array('Paginator');

    /**
     * index method
     *
     * @return void
     */
    public function index() {
        $this->SisdecTipology->recursive = -1;
        $sisdecTipologies = $this->SisdecTipology->find('all');
        $this->set(compact('sisdecTipologies'));

        //debug($sisdecTipologies);
    }

    /**
     * view method
     *
     * @throws NotFoundException
     * @param string $id
     * @return void
     */
    public function view($id = null) {
        if (!$this->SisdecTipology->exists($id)) {
            throw new NotFoundException(__('Invalid sisdec tipology'));
        }
        $options = array('conditions' => array('SisdecTipology.' . $this->SisdecTipology->primaryKey => $id));
        $this->set('sisdecTipology', $this->SisdecTipology->find('first', $options));
    }

    /**
     * add method
     *
     * @return void
     */
    public function add() {
        $this->layout = false;
        if ($this->request->is('post')) {

            $this->SisdecTipology->create();
            if ($this->SisdecTipology->save($this->request->data)) {
                $this->Session->setFlash(__('Tipologia gravada com SUCESSO.'));
                return $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash(__('Nova Tipologia não pôde ser salva. Por favor, tente novamente.'));
            }
        }
    }

    /**
     * edit method
     *
     * @throws NotFoundException
     * @param string $id
     * @return void
     */
    public function edit($id = null) {
        if (!$this->SisdecTipology->exists($id)) {
            throw new NotFoundException(__('Invalid sisdec tipology'));
        }
        if ($this->request->is(array('post', 'put'))) {
            if ($this->SisdecTipology->save($this->request->data)) {
                $this->Session->setFlash(__('Alteração feita com SUCESSO.'));
                return $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash(__('Tipologia não pôde ser alterada. Por favor, tente novamente.'));
            }
        } else {
            $options = array('conditions' => array('SisdecTipology.' . $this->SisdecTipology->primaryKey => $id));
            $this->request->data = $this->SisdecTipology->find('first', $options);
        }
    }

    /**
     * delete method
     *
     * @throws NotFoundException
     * @param string $id
     * @return void
     */
    public function delete($id = null) {
        $this->SisdecTipology->id = $id;
        if (!$this->SisdecTipology->exists()) {
            throw new NotFoundException(__('Invalid sisdec tipology'));
        }
        $this->request->onlyAllow('post', 'delete');
        if ($this->SisdecTipology->delete()) {
            $this->Session->setFlash(__('Tipologia Excluída.'));
        } else {
            $this->Session->setFlash(__('Tipologia não pôde ser deleteda. Por favor, tente novamente.'));
        }
        return $this->redirect(array('action' => 'index'));
    }

}
